//跨标签页通信, 

const channel = new BroadcastChannel('demo')  //需要每个标签页创建相同的频道

export function sendMsg(type, content) {
    //发送数据
    channel.postMessage({
        type, content
    })
}
export function listenMsg(callback) {
    const handler = e => {
        callback && callback(e.data)
    } 
    //接收数据
    channel.addEventListener( 'message', handler)
    //返回取消监听函数, 当页面或者组件销毁时取消监听
    return ()=>{
        channel.removeEventListener('message', handler)
    }
}